/**
 * @author Francesco Rosso, matr 592057
 */

package pcd1112.model;

/**
 * This class represents a node description with: node ID, number of neighbours,
 * number of received messages, number of sent messages, number of signature
 * checks, number of memorized messages, remaining energy
 */
public class DescrizioneNodo {
	private int idNodo, numVicini, numMessaggiRicevuti, numMessaggiSpediti,
			numSignatureChecks, numMessaggiMemorizzati, energiaRimasta;
	private Coordinata posizione;

	/**
	 * 
	 * @param id
	 *            the node ID to set
	 */
	public void setIdNodo(int id) {
		idNodo = id;
	}

	/**
	 * 
	 * @param p
	 *            the position to set
	 */
	public void setPosizione(Coordinata p) {
		posizione = p;
	}

	/**
	 * 
	 * @param n
	 *            the neighbour's number to set
	 */
	public void setNumVicini(int n) {
		numVicini = n;
	}

	/**
	 * 
	 * @param n
	 *            the number of received messages to set
	 */
	public void setNumMessaggiRicevuti(int n) {
		numMessaggiRicevuti = n;
	}

	/**
	 * 
	 * @param n
	 *            the number of sent messages
	 */
	public void setNumMessaggiSpediti(int n) {
		numMessaggiSpediti = n;
	}

	/**
	 * 
	 * @return the node id
	 */
	public int getIdNodo() {
		return idNodo;
	}

	/**
	 * 
	 * @return the node position
	 */
	public Coordinata getPosizione() {
		return posizione;
	}

	/**
	 * @return the neighbours number
	 */
	public int getNumVicini() {
		return numVicini;
	}

	/**
	 * 
	 * @return the number of received messages
	 */
	public int getNumMessaggiRicevuti() {
		return numMessaggiRicevuti;
	}

	/**
	 * @return the number of sent messages
	 */
	public int getNumMessaggiSpediti() {
		return numMessaggiSpediti;
	}

	/**
	 * @return the number of signatures
	 */
	public int getNumSignatureChecks() {
		return numSignatureChecks;
	}

	/**
	 * @param numSignatureChecks
	 *            the number of signatures to set
	 */
	public void setNumSignatureChecks(int numSignatureChecks) {
		this.numSignatureChecks = numSignatureChecks;
	}

	/**
	 * @return the number of memorized messages
	 */
	public int getNumMessaggiMemorizzati() {
		return numMessaggiMemorizzati;
	}

	/**
	 * @param numMessaggiMemorizzati
	 *            the memorized messages to set
	 */
	public void setNumMessaggiMemorizzati(int numMessaggiMemorizzati) {
		this.numMessaggiMemorizzati = numMessaggiMemorizzati;
	}

	/**
	 * @return the remaining energy
	 */
	public int getEnergiaRimasta() {
		return energiaRimasta;
	}

	/**
	 * @param energiaRimasta
	 *            the remaining energy to set
	 */
	public void setEnergiaRimasta(int energiaRimasta) {
		this.energiaRimasta = energiaRimasta;
	}
}
